package MAP;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.function.Consumer;

// 第一种遍历方式 键找值

public class MapDemo2 {
    public static void main(String[] args) {

        // 创建Map集合的对象
        Map<String,String> m = new HashMap<>();

        //2.添加元素
        m.put("尹志平","小龙女");
        m.put("郭靖","穆念慈");
        m.put("欧阳克","黄蓉");

        // 把集合中的键拿出放到一个单列集合中
        Set<String> keys = m.keySet();

        // 1.利用单列集合,遍历集合得到键
        // 强调for循环
        System.out.println("------------------------for-------------------");

        for(String key:keys){
            System.out.println(key);
            //利用键得到值
            String value = m.get(key);
            System.out.println(value);
        }


        // 2.iterator 迭代器
        // 创建一个迭代器对象,接收keys的迭代器
        System.out.println("------------------------iterator-------------------");

        Iterator it = keys.iterator();

        // 判断是否有下一个元素
        while (it.hasNext()) {
            // 获取元素并移动指针
            String s = m.get(it.next());
            System.out.println(s);
        }


        // 3.Lambda 表达式
        System.out.println("------------------------lambda-------------------");
        keys.forEach(s-> System.out.println(s));
    }
}
